package cn.kgc.spring.entity;

import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

/**
 * @author 课工场
 * @date 2024/2/21
 * @description
 * 通过注解实现对象的托管
 *     1.默认的id是类首字母的小写  Teacher  -> teacher
 *     2.可以通过在使用注解时 设置注解属性改变id的值  @Component("tea")
 */
@Data
@Component("tea")
// @Scope("prototype")   // 使用该注解标识类的作用域
public class Teacher {

    @Value("jack")
    private String teaName;
    @Value("30")
    private Integer age;

    public Teacher(){
        System.out.println("----------Teacher()-----------");
    }


    @PostConstruct  //  设置初始化方法
    public void init(){
        System.out.println("--------init()-------");
    }


    @PreDestroy   // 设置销毁方法
    public void destroy(){
        System.out.println("--------destroy()-------");
    }
}
